<?php

class Funcionario {
	private $perfil_id;
	private $usuario;
	private $senha;
	private $dataContrato;
	private $numeroVendas;

	function __construct($perfil,$usuario,$senha,$dataContrato)
	{
		$this->perfil_id = $perfil;
		$this->usuario = $usuario;
		$this->senha = md5($senha);
		$this->dataContrato = $dataContrato;
		$this->numeroVendas = 0;
	}

  	function registrarFuncionario($nome,$cpf)
	{
		$query = "select id from pessoas where cpf ='".$cpf."' and BINARY nome='".$nome."'";
		$row = mysql_query($query);
		$nome = mysql_fetch_assoc($row);
		$query = "insert into funcionarios(Pessoas_id,Perfis_id,userName,senha,Data_de_Contrato,Numero_Venda) values (".$nome['id'].",".$this->perfil_id.",'".$this->usuario."','".$this->senha."','".$this->dataContrato."',".$this->numeroVendas.")";
		return mysql_query($query) or die (mysql_error());
	}
	
	function editarFuncionario($opcao,$dado,$id,$tipo) {
		if ($tipo == 1)
		$query = "update funcionarios set ".$opcao."=".$dado." where Pessoas_id=".$id;
		elseif ($tipo == 2)
		$query = "update funcionarios set ".$opcao."='".$dado."' where Pessoas_id=".$id;
		return mysql_query($query) or die (mysql_error());
	}
	
	public static function excluirFuncionario($id)
	{
		$query = "delete from funcionarios where Pessoas_id = ".$id." and userName != 'admin'";
		mysql_query($query) or die (header("location:../view/erro.php?erro=funcionarioRelacionado"));
	}

	public function getPerfilId() {
		return $this->perfil_id;
	}
	public function getUsuario() {
		return $this->usuario;
	}
	public function getSenha() {
		return $this->senha;
	}
	public function getDataContrato() {
		return $this->dataContrato;
	}
	public function getNumeroVendas() {
		return $this->numeroVendas;
	}
	public function setDataNascimento($dataNascimento) {
		$this->dataNascimento = $dataNascimento;
	}
	public function setUsuario($usuario) {
		$this->usuario = $usuario;
	}
	public function setSenha($senha) {
		$this->senha = $senha;	
	}
	public function setDataContrato($dataContrato) {
		$this->dataContrato = $dataContrato;	
	}
};